package com.tencreat.domain.mall;

import com.baomidou.mybatisplus.annotation.*;
import com.tencreat.common.annotation.Excel;
import com.tencreat.common.core.domain.BaseEntity;
import com.tencreat.common.enums.account.PayCompanyEnum;
import com.tencreat.common.enums.PayType;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;


/**
 * 支付设置对象 mall_pay_setting
 *
 * @Author tencreat
 * @Company: 深圳腾创互联科技有限公司
 * @link: https://tencreat.com
 * @Date 2022-07-07
 */
@Data
@EqualsAndHashCode(callSuper = true)
@AllArgsConstructor
@NoArgsConstructor
@ApiModel
@TableName("mall_pay_setting")
public class MallPaySetting extends BaseEntity<MallPaySetting> {
    private static final long serialVersionUID = 1L;


    /**
     * $column.columnComment
     */
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "ID")
    private Long id;


    /**
     * 类型，0|藏品购买,1|余额充值
     */
    @Excel(name = "类型，0|藏品购买,1|余额充值")
    @ApiModelProperty(value = "类型，0|藏品购买,1|余额充值")
    @TableField("`type`")
    private Integer type;


    /**
     * 同JAVA PayType枚举
     */
    @Excel(name = "同JAVA PayType枚举")
    @ApiModelProperty(value = "支付类型 同JAVA PayType枚举")
    @TableField("`pay_type`")
    private PayType payType;

    @ApiModelProperty("支付类型值")
    @TableField(exist = false)
    private Integer payTypeValue;


    /**
     * 支付公司
     */
    @Excel(name = "支付公司")
    @ApiModelProperty(value = "支付公司")
    @TableField("`company`")
    private PayCompanyEnum company;

    @ApiModelProperty("支付公司值")
    @TableField(exist = false)
    private Integer companyValue;


    /**
     * 顺序
     */
    @Excel(name = "顺序")
    @ApiModelProperty(value = "顺序")
    @TableField("`sort`")
    private Integer sort;


    /**
     * 是否开启
     */
    @Excel(name = "是否开启")
    @ApiModelProperty(value = "是否开启")
    @TableField("`open`")
    private Boolean open;


    /**
     * 是否接入
     */
    @Excel(name = "是否接入")
    @ApiModelProperty(value = "是否接入")
    @TableField("`introduce`")
    private Boolean introduce;


    /**
     * 删除标志（0代表存在 2代表删除）
     */
    @TableLogic
    @TableField("`del_flag`")
    private String delFlag;


    /**
     * 租户ID
     */
    @Excel(name = "租户ID")
    @ApiModelProperty(value = "租户ID")
    @TableField("`tenant_id`")
    private Long tenantId;


}
